package com.study.bookstore.service;

import com.study.bookstore.domain.Catalog;
import com.study.bookstore.service.dto.DtoCatalog;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * Service Interface for managing Catalog.
 */
public interface CatalogService {

    /**
     * Save a catalog.
     *
     * @param catalog the entity to save
     * @return the persisted entity
     */
    Catalog save(Catalog catalog);

    /**
     * Get all the catalogs.
     *
     * @param pageable the pagination information
     * @return the list of entities
     */
    Page<Catalog> findAll(Pageable pageable);

    /**
     * Get the "id" catalog.
     *
     * @param id the id of the entity
     * @return the entity
     */
    Catalog findOne(Long id);

    /**
     * Delete the "id" catalog.
     *
     * @param id the id of the entity
     */
    void delete(Long id);

    List<DtoCatalog> getCatalog(Long id) throws Exception;
    List<DtoCatalog> getCatalogByCatalog(String p_catalog) throws Exception;

}
